Computer systems commonly comprise functionality to cope with a program or process ceasing to operate appropriately which is generally referred to as the program or process crashing. Any type of program or process may crash such as an application program, system or utility program, operating system or virtual machine. In order to assist the diagnosis of a crash, the crashing program or the operating system on which the crashing program runs may be arranged to output a file comprising a copy of the data from the memory used by the crashing program. Such a file is commonly referred to as a core file or a core dump. Such core files commonly comprise a memory image, that is, a copy of the data from the processor registers and random access memory (RAM) occupied by the crashing program or process, which may be useful in the identification of the cause of the crash.
However, such core files may be large and require significant storage space. In addition, large core files require significant time and resource to create or move. For example, in some arrangements, the process memory space usage may exceed the amount of storage space or transmission bandwidth available. In this case, generating core files that are images of the memory may not be practical.
Therefore, there is a need in the art to address the aforementioned problem.